package cn.signalpha.modules.shop.excel;

import cn.signalpha.modules.shop.excel.converter.OrderRefundGoodsStatusConverter;
import cn.signalpha.modules.shop.excel.converter.OrderRefundStatusConverter;
import cn.signalpha.modules.shop.excel.converter.OrderRefundTypeConverter;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 视图实体类
 *
 * @author signalpha
 */
@Data
@ColumnWidth(20)
@ContentRowHeight(20)
public class OrderRefundExcel implements Serializable {
	private static final long serialVersionUID = 1L;

	@ColumnWidth(20)
	@ExcelProperty(value = "订单编号")
	private String orderNo;

	@ColumnWidth(20)
	@ExcelProperty(value = "售后编号")
	private String refundNo;

	@ColumnWidth(20)
	@ExcelProperty(value = "商户名称")
	private String sellerName;

	@ColumnWidth(45)
	@ExcelProperty(value = "商品名称")
	private String goodsName;

	@ColumnWidth(12)
	@ExcelProperty(value = "商品单价")
	private Double goodsPrice;

	@ColumnWidth(12)
	@ExcelProperty(value = "商品总价")
	private Double goodsPriceTotal;

	@ColumnWidth(15)
	@ExcelProperty(value = "商品状态", converter = OrderRefundGoodsStatusConverter.class)
	private Integer goodsStatus;

	@ColumnWidth(12)
	@ExcelProperty(value = "售后数量")
	private Integer goodsNum;

	@ColumnWidth(12)
	@ExcelProperty(value = "售后类型", converter = OrderRefundTypeConverter.class)
	private Integer refundType;

	@ColumnWidth(12)
	@ExcelProperty(value = "售后状态", converter = OrderRefundStatusConverter.class)
	private Integer refundStatus;

	@ColumnWidth(12)
	@ExcelProperty(value = "退款金额")
	private Double refundMoney;

	@ColumnWidth(12)
	@ExcelProperty(value = "退款余额")
	private Double returnDeductMoney;

	@ColumnWidth(12)
	@ExcelProperty(value = "退款积分")
	private Double returnDeductIntegral;

	@ExcelProperty(value = "申请原因")
	private String buyerMsg;

	@ExcelProperty(value = "商户备注")
	private String sellerMsg;

	@ExcelProperty(value = "申请时间")
	private Date createTime;

	@ExcelProperty(value = "处理时间")
	private Date handelTime;

	@ExcelProperty(value = "退款时间")
	private Date refundTime;

}
